package com.yonyou.iuap.jxzy.entity;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.Random;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;

import cn.hutool.core.date.DateUtil;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.yonyou.iuap.baseservice.bpm.entity.AbsBpmModel;
import com.yonyou.iuap.baseservice.entity.annotation.CodingEntity;
import com.yonyou.iuap.baseservice.print.entity.Printable;
import com.yonyou.iuap.baseservice.support.condition.Condition;
import com.yonyou.iuap.baseservice.support.generator.GeneratedValue;

/**
 * 收货通知单
 * @author Junxiang Peng
 *
 */
@JsonIgnoreProperties(ignoreUnknown = true)
@Table(name = "levm_deliverybill")

@CodingEntity(codingField="")
public class LevmDeliverybill extends AbsBpmModel  implements Serializable,Printable{

	@Id
    @GeneratedValue
    @Condition
	private String pk_delivery;  //ID
	
	@Condition
	@Column(name="vdef13")
	private String vdef13;//自定义字段
	
	@Condition
	@Column(name="vdef14")
	private String vdef14;
	
	@Condition
	@Column(name="vdef15")
	private String vdef15;
	
	@Condition
	@Column(name="vdef16")
	private String vdef16;
	
	@Condition
	@Column(name="vdef17")
	private String vdef17;
	
	@Condition
	@Column(name="vdef18")
	private String vdef18;
	
	@Condition
	@Column(name="vdef19")
	private String vdef19;
	
	@Condition
	@Column(name="vdef20")
	private String vdef20;
	
	@Condition
    @Column(name="ctransporttype")
	private String ctransporttype;//运输方式
	
	@Condition
	@Column(name="ctransway")
	private String ctransway;//行驶路线
	
	@Condition
	@Column(name="vcardid")
	private String vcardid;//卡号
	
	@Condition
	@Column(name="dsendcardtime")
	private String dsendcardtime;//发卡时间 char
	
	@Condition
	@Column(name="fsendcardstatus")
	private Integer fsendcardstatus;//发卡状态 int
	
	@Condition
	@Column(name="dmakedate")
	private String dmakedate;//制单时间  char
	
	@Condition
	@Column(name="bisctrlself")
	private String bisctrlself;//是否自制 char
	
	
	
	
	@Condition
	@Column(name="btempsaveflag")
	private String btempsaveflag;//暂时标志  char
	
	@Condition
	@Column(name="biseditvehicle")
	private String biseditvehicle;//是否修改车牌号标识 char
	
	@Condition
	@Column(name="biscompletemeam")
	private String biscompletemeam;//是否计量完成 char
	
	@Condition
	@Column(name="bisreviseflag")
	private String bisreviseflag;//是否修订标识  char
	
	@Condition
	@Column(name="pk_group")
	private String pk_group;//集团
	
	
	@Condition
	@Column(name="pk_org")
	private String pk_org;	//组织
	
	@Condition
	@Column(name="pk_org_v")
	private String pk_org_v;	//组织版本
	
	@Condition
	@Column(name="pk_applyorg_v")
	private String pk_applyorg_v;	//申请组织
	
	@Condition
	@Column(name="pk_applyorg")
	private String pk_applyorg;	//申请组织版本
	
	@Condition
	@Column(name="vsrctype")
	private String vsrctype;	//来源单据类型
	
	@Condition
	@Column(name="vbilltype")
	private String vbilltype;	//单据类型
	
	
	//=================================================
	@Condition
	@Column(name="vbilltypecode")
	private String vbilltypecode;	//单据类型编码
	
	@Condition
	@Column(name="vtrantype")
	private String vtrantype;	//交易类型
	
	@Condition
	@Column(name="vsrctrantype")
	private String vsrctrantype;	//来源交易类型
	
	@Condition
	@Column(name="vtrantypecode")
	private String vtrantypecode;	//交易类型编码
	
	@Condition
	@Column(name="vbillcode")
	private String vbillcode;	//单据号
	
	@Condition
	@Column(name="dbilldate")
	private String dbilldate;	//业务日期 char
	
	//=================================================
		@Condition
		@Column(name="deliverytype")
		private String deliverytype;	//提货/供货类型
		
		@Condition
		@Column(name="vsupplytype")
		private Integer vsupplytype;	//供货模式
		
		@Condition
		@Column(name="meteringmode")
		private Integer meteringmode;	//计量类型
		
		@Condition
		@Column(name="cmaterialvid")
		private String cmaterialvid;	//物料
		
		@Condition
		@Column(name="cmaterialid")
		private String cmaterialid;	//物料版本
		
		@Condition
		@Column(name="cunitid")
		private String cunitid;	//主单位
		
		//=================================================
		@Condition
		@Column(name="pk_customer")
		private String pk_customer;	//客户
		
		@Condition
		@Column(name="cvendorvid")
		private String cvendorvid;	//供应商
		
		@Condition
		@Column(name="pk_supplier")
		private String pk_supplier;	//运输单位
		
		@Condition
		@Column(name="vvehicle")
		private String vvehicle;	//车牌号
		
	//==========================
		@Condition
		@Column(name="vdef3")
		private String vdef3;//自定义字段
		
		@Condition
		@Column(name="vdef4")
		private String vdef4;
		
		@Condition
		@Column(name="vdef5")
		private String vdef5;
		
		@Condition
		@Column(name="vdef6")
		private String vdef6;
		
		@Condition
		@Column(name="vdef7")
		private String vdef7;
		
		@Condition
		@Column(name="vdef8")
		private String vdef8;
		
		@Condition
		@Column(name="vdef9")
		private String vdef9;
		
		@Condition
		@Column(name="vdef10")
		private String vdef10;
		
		@Condition
		@Column(name="vdef11")
		private String vdef11;
		
		@Condition
		@Column(name="vdef12")
		private String vdef12;
		//=============================================
		@Condition
		@Column(name="taudittime")
		private String taudittime;	//审批时间 char
		
		@Condition
		@Column(name="creator")
		private String creator;	//创建人
		
		@Condition
		@Column(name="creationtime")
		private String creationtime;	//创建时间 char
		
		@Condition
		@Column(name="modifier")
		private String modifier;	//修改人
		
		@Condition
		@Column(name="modifiedtime")
		private String modifiedtime;	//修改时间 char
		
		@Condition
		@Column(name="cdeloperator")
		private String cdeloperator;	//作废人
		
		@Condition
		@Column(name="ddeltime")
		private String ddeltime;	//作废时间 char
		
		@Condition
		@Column(name="vdef1")
		private String vdef1;
		
		@Condition
		@Column(name="vdef2")
		private String vdef2;
		
		//=========================================
		@Condition
		@Column(name="cdriverid")
		private String cdriverid;	//驾驶员
		
		@Condition
		@Column(name="pk_sendorg")
		private String pk_sendorg;	//发货库存组织
		
		@Condition
		@Column(name="pk_sendorg_v")
		private String pk_sendorg_v;	//发货库存组织版本
		
		@Condition
		@Column(name="pk_sendstore")
		private String pk_sendstore;	//发货仓库
		
		@Condition
		@Column(name="csendlocation")
		private String csendlocation;	//发货货位
		
		@Condition
		@Column(name="pk_receiveorg")
		private String pk_receiveorg;	//收货库存组织
		
		//=========================================
		@Condition
		@Column(name="pk_receiveorg_v")
		private String pk_receiveorg_v;	//收货库存组织版本
		
		@Condition
		@Column(name="pk_receivestore")
		private String pk_receivestore;	//收货仓库
		
		@Condition
		@Column(name="creclocation")
		private String creclocation;	//收货货位
		
		@Condition
		@Column(name="remark")
		private String remark;	//备注
		
		@Condition
		@Column(name="fstatusflag")
		private Integer fstatusflag;	//单据状态
		
		@Condition
		@Column(name="denddate")
		private String denddate;	//单据有效期至 char
		
		//=========================================
		@Condition
		@Column(name="vsrcbillid")
		private String vsrcbillid;	//来源单据主键
		
		@Condition
		@Column(name="nappraisenum")
		private BigDecimal nappraisenum;	//暂估数量
		
		@Condition
		@Column(name="billmaker")
		private String billmaker;	//制单人
		
		@Condition
		@Column(name="billmaketime")
		private String billmaketime;	//制单时间  char
		
		@Condition
		@Column(name="approver")
		private String approver;	//审批人
		
		/**
		 * 
		 * @return
		 */
		@Condition
		@Column(name="dr")
		private Integer dr;
		
		@Condition
		@Column(name="pk_cardmanager")
		private String pk_cardmanager;
		
		@Condition
		@Column(name="ts")
		private Integer ts;
		
		@Condition
		@Column(name="cpoundtranstype")
		private String cpoundtranstype;
		
		@Condition
		@Column(name="vlebusitypeid")
		private String vlebusitypeid;
		
		private String isFirst;
		private String firstData;
		
		
	
		
		

		

		public String getFirstData() {
			return firstData;
		}

		public void setFirstData(String firstData) {
			this.firstData = firstData;
		}

		public String getIsFirst() {
			return isFirst;
		}

		public void setIsFirst(String isFirst) {
			this.isFirst = isFirst;
		}

		public Integer getDr() {
			return dr;
		}

		public void setDr(Integer dr) {
			this.dr = dr;
		}

		
		public void setTs(Integer ts) {
			this.ts = ts;
		}

		public String getCpoundtranstype() {
			return cpoundtranstype;
		}

		public void setCpoundtranstype(String cpoundtranstype) {
			this.cpoundtranstype = cpoundtranstype;
		}

		public String getVlebusitypeid() {
			return vlebusitypeid;
		}

		public void setVlebusitypeid(String vlebusitypeid) {
			this.vlebusitypeid = vlebusitypeid;
		}

		public String getVdef13() {
			return vdef13;
		}

		public void setVdef13(String vdef13) {
			this.vdef13 = vdef13;
		}

		public String getVdef14() {
			return vdef14;
		}

		public void setVdef14(String vdef14) {
			this.vdef14 = vdef14;
		}

		public String getVdef15() {
			return vdef15;
		}

		public void setVdef15(String vdef15) {
			this.vdef15 = vdef15;
		}

		public String getVdef16() {
			return vdef16;
		}

		public void setVdef16(String vdef16) {
			this.vdef16 = vdef16;
		}

		public String getVdef17() {
			return vdef17;
		}

		public void setVdef17(String vdef17) {
			this.vdef17 = vdef17;
		}

		public String getVdef18() {
			return vdef18;
		}

		public void setVdef18(String vdef18) {
			this.vdef18 = vdef18;
		}

		public String getVdef19() {
			return vdef19;
		}

		public void setVdef19(String vdef19) {
			this.vdef19 = vdef19;
		}

		public String getVdef20() {
			return vdef20;
		}

		public void setVdef20(String vdef20) {
			this.vdef20 = vdef20;
		}

		public Integer getMeteringmode() {
			return meteringmode;
		}

		public void setMeteringmode(Integer meteringmode) {
			this.meteringmode = meteringmode;
		}

		public String getVdef3() {
			return vdef3;
		}

		public void setVdef3(String vdef3) {
			this.vdef3 = vdef3;
		}

		public String getVdef4() {
			return vdef4;
		}

		public void setVdef4(String vdef4) {
			this.vdef4 = vdef4;
		}

		public String getVdef5() {
			return vdef5;
		}

		public void setVdef5(String vdef5) {
			this.vdef5 = vdef5;
		}

		public String getVdef6() {
			return vdef6;
		}

		public void setVdef6(String vdef6) {
			this.vdef6 = vdef6;
		}

		public String getVdef7() {
			return vdef7;
		}

		public void setVdef7(String vdef7) {
			this.vdef7 = vdef7;
		}

		public String getVdef8() {
			return vdef8;
		}

		public void setVdef8(String vdef8) {
			this.vdef8 = vdef8;
		}

		public String getVdef9() {
			return vdef9;
		}

		public void setVdef9(String vdef9) {
			this.vdef9 = vdef9;
		}

		public String getVdef10() {
			return vdef10;
		}

		public void setVdef10(String vdef10) {
			this.vdef10 = vdef10;
		}

		public String getVdef11() {
			return vdef11;
		}

		public void setVdef11(String vdef11) {
			this.vdef11 = vdef11;
		}

		public String getVdef12() {
			return vdef12;
		}

		public void setVdef12(String vdef12) {
			this.vdef12 = vdef12;
		}

		public String getVdef1() {
			return vdef1;
		}

		public void setVdef1(String vdef1) {
			this.vdef1 = vdef1;
		}

		public String getVdef2() {
			return vdef2;
		}

		public void setVdef2(String vdef2) {
			this.vdef2 = vdef2;
		}

		
		public String getPk_cardmanager() {
			return pk_cardmanager;
		}

		public void setPk_cardmanager(String pk_cardmanager) {
			this.pk_cardmanager = pk_cardmanager;
		}



		public String getPk_delivery() {
			return pk_delivery;
		}

		public void setPk_delivery(String pk_delivery) {
			this.pk_delivery = pk_delivery;
		}


		public String getCtransporttype() {
			return ctransporttype;
		}

		public void setCtransporttype(String ctransporttype) {
			this.ctransporttype = ctransporttype;
		}

		public String getCtransway() {
			return ctransway;
		}

		public void setCtransway(String ctransway) {
			this.ctransway = ctransway;
		}

		public String getVcardid() {
			return vcardid;
		}

		public void setVcardid(String vcardid) {
			this.vcardid = vcardid;
		}

		public String getDsendcardtime() {
			return dsendcardtime;
		}

		public void setDsendcardtime(String dsendcardtime) {
			this.dsendcardtime = dsendcardtime;
		}

		public Integer getFsendcardstatus() {
			return fsendcardstatus;
		}

		public void setFsendcardstatus(Integer fsendcardstatus) {
			this.fsendcardstatus = fsendcardstatus;
		}

		public String getDmakedate() {
			return dmakedate;
		}

		public void setDmakedate(String dmakedate) {
			this.dmakedate = dmakedate;
		}

		public String getBisctrlself() {
			return bisctrlself;
		}

		public void setBisctrlself(String bisctrlself) {
			this.bisctrlself = bisctrlself;
		}

		public String getBtempsaveflag() {
			return btempsaveflag;
		}

		public void setBtempsaveflag(String btempsaveflag) {
			this.btempsaveflag = btempsaveflag;
		}

		public String getBiseditvehicle() {
			return biseditvehicle;
		}

		public void setBiseditvehicle(String biseditvehicle) {
			this.biseditvehicle = biseditvehicle;
		}

		public String getBiscompletemeam() {
			return biscompletemeam;
		}

		public void setBiscompletemeam(String biscompletemeam) {
			this.biscompletemeam = biscompletemeam;
		}

		public String getBisreviseflag() {
			return bisreviseflag;
		}

		public void setBisreviseflag(String bisreviseflag) {
			this.bisreviseflag = bisreviseflag;
		}

		public String getPk_group() {
			return pk_group;
		}

		public void setPk_group(String pk_group) {
			this.pk_group = pk_group;
		}

		public String getPk_org() {
			return pk_org;
		}

		public void setPk_org(String pk_org) {
			this.pk_org = pk_org;
		}

		public String getPk_org_v() {
			return pk_org_v;
		}

		public void setPk_org_v(String pk_org_v) {
			this.pk_org_v = pk_org_v;
		}

		public String getPk_applyorg_v() {
			return pk_applyorg_v;
		}

		public void setPk_applyorg_v(String pk_applyorg_v) {
			this.pk_applyorg_v = pk_applyorg_v;
		}

		public String getPk_applyorg() {
			return pk_applyorg;
		}

		public void setPk_applyorg(String pk_applyorg) {
			this.pk_applyorg = pk_applyorg;
		}

		public String getVsrctype() {
			return vsrctype;
		}

		public void setVsrctype(String vsrctype) {
			this.vsrctype = vsrctype;
		}

		public String getVbilltype() {
			return vbilltype;
		}

		public void setVbilltype(String vbilltype) {
			this.vbilltype = vbilltype;
		}

		public String getVbilltypecode() {
			return vbilltypecode;
		}

		public void setVbilltypecode(String vbilltypecode) {
			this.vbilltypecode = vbilltypecode;
		}

		public String getVtrantype() {
			return vtrantype;
		}

		public void setVtrantype(String vtrantype) {
			this.vtrantype = vtrantype;
		}

		public String getVsrctrantype() {
			return vsrctrantype;
		}

		public void setVsrctrantype(String vsrctrantype) {
			this.vsrctrantype = vsrctrantype;
		}

		public String getVtrantypecode() {
			return vtrantypecode;
		}

		public void setVtrantypecode(String vtrantypecode) {
			this.vtrantypecode = vtrantypecode;
		}

		public String getVbillcode() {
			return vbillcode;
		}

		public void setVbillcode(String vbillcode) {
			this.vbillcode = vbillcode;
		}

		public String getDbilldate() {
			return dbilldate;
		}

		public void setDbilldate(String dbilldate) {
			this.dbilldate = dbilldate;
		}

		public String getDeliverytype() {
			return deliverytype;
		}

		public void setDeliverytype(String deliverytype) {
			this.deliverytype = deliverytype;
		}

		public Integer getVsupplytype() {
			return vsupplytype;
		}

		public void setVsupplytype(Integer vsupplytype) {
			this.vsupplytype = vsupplytype;
		}


		public String getCmaterialvid() {
			return cmaterialvid;
		}

		public void setCmaterialvid(String cmaterialvid) {
			this.cmaterialvid = cmaterialvid;
		}

		public String getCmaterialid() {
			return cmaterialid;
		}

		public void setCmaterialid(String cmaterialid) {
			this.cmaterialid = cmaterialid;
		}

		public String getCunitid() {
			return cunitid;
		}

		public void setCunitid(String cunitid) {
			this.cunitid = cunitid;
		}

		public String getPk_customer() {
			return pk_customer;
		}

		public void setPk_customer(String pk_customer) {
			this.pk_customer = pk_customer;
		}

		public String getCvendorvid() {
			return cvendorvid;
		}

		public void setCvendorvid(String cvendorvid) {
			this.cvendorvid = cvendorvid;
		}

		public String getPk_supplier() {
			return pk_supplier;
		}

		public void setPk_supplier(String pk_supplier) {
			this.pk_supplier = pk_supplier;
		}

		public String getVvehicle() {
			return vvehicle;
		}

		public void setVvehicle(String vvehicle) {
			this.vvehicle = vvehicle;
		}


		public String getTaudittime() {
			return taudittime;
		}

		public void setTaudittime(String taudittime) {
			this.taudittime = taudittime;
		}

		public String getCreator() {
			return creator;
		}

		public void setCreator(String creator) {
			this.creator = creator;
		}

		public String getCreationtime() {
			return creationtime;
		}

		public void setCreationtime(String creationtime) {
			this.creationtime = creationtime;
		}

		public String getModifier() {
			return modifier;
		}

		public void setModifier(String modifier) {
			this.modifier = modifier;
		}

		public String getModifiedtime() {
			return modifiedtime;
		}

		public void setModifiedtime(String modifiedtime) {
			this.modifiedtime = modifiedtime;
		}

		public String getCdeloperator() {
			return cdeloperator;
		}

		public void setCdeloperator(String cdeloperator) {
			this.cdeloperator = cdeloperator;
		}

		public String getDdeltime() {
			return ddeltime;
		}

		public void setDdeltime(String ddeltime) {
			this.ddeltime = ddeltime;
		}

		public String getCdriverid() {
			return cdriverid;
		}

		public void setCdriverid(String cdriverid) {
			this.cdriverid = cdriverid;
		}

		public String getPk_sendorg() {
			return pk_sendorg;
		}

		public void setPk_sendorg(String pk_sendorg) {
			this.pk_sendorg = pk_sendorg;
		}

		public String getPk_sendorg_v() {
			return pk_sendorg_v;
		}

		public void setPk_sendorg_v(String pk_sendorg_v) {
			this.pk_sendorg_v = pk_sendorg_v;
		}

		public String getPk_sendstore() {
			return pk_sendstore;
		}

		public void setPk_sendstore(String pk_sendstore) {
			this.pk_sendstore = pk_sendstore;
		}

		public String getCsendlocation() {
			return csendlocation;
		}

		public void setCsendlocation(String csendlocation) {
			this.csendlocation = csendlocation;
		}

		public String getPk_receiveorg() {
			return pk_receiveorg;
		}

		public void setPk_receiveorg(String pk_receiveorg) {
			this.pk_receiveorg = pk_receiveorg;
		}

		public String getPk_receiveorg_v() {
			return pk_receiveorg_v;
		}

		public void setPk_receiveorg_v(String pk_receiveorg_v) {
			this.pk_receiveorg_v = pk_receiveorg_v;
		}

		public String getPk_receivestore() {
			return pk_receivestore;
		}

		public void setPk_receivestore(String pk_receivestore) {
			this.pk_receivestore = pk_receivestore;
		}

		public String getCreclocation() {
			return creclocation;
		}

		public void setCreclocation(String creclocation) {
			this.creclocation = creclocation;
		}

		public String getRemark() {
			return remark;
		}

		public void setRemark(String remark) {
			this.remark = remark;
		}

		public Integer getFstatusflag() {
			return fstatusflag;
		}

		public void setFstatusflag(Integer fstatusflag) {
			this.fstatusflag = fstatusflag;
		}

		public String getDenddate() {
			return denddate;
		}

		public void setDenddate(String denddate) {
			this.denddate = denddate;
		}

		public String getVsrcbillid() {
			return vsrcbillid;
		}

		public void setVsrcbillid(String vsrcbillid) {
			this.vsrcbillid = vsrcbillid;
		}

		public BigDecimal getNappraisenum() {
			return nappraisenum;
		}

		public void setNappraisenum(BigDecimal nappraisenum) {
			this.nappraisenum = nappraisenum;
		}

		public String getBillmaker() {
			return billmaker;
		}

		public void setBillmaker(String billmaker) {
			this.billmaker = billmaker;
		}

		public String getBillmaketime() {
			return billmaketime;
		}

		public void setBillmaketime(String billmaketime) {
			this.billmaketime = billmaketime;
		}

		public String getApprover() {
			return approver;
		}

		public void setApprover(String approver) {
			this.approver = approver;
		}

		@Override
		public String getBpmBillCode() {
			// TODO Auto-generated method stub
			return null;
		}

		@Override
		public String getMainBoCode() {
			// TODO Auto-generated method stub
			return  DateUtil.format(new Date(), "yyyyMMddHHmmss"+new Random().nextInt(10))   ;
		}
		
		
		
		
		

	
	
	
	
	
}
